Skip to content

Document undocumented SDK behaviour in the README - #60

Open
jrosendahl-opt wants to merge 3 commits into
masterfrom
docs/readme-undocumented
Open

jrosendahl-opt wants to merge 3 commits into
masterfrom
docs/readme-undocumented

Conversation

@jrosendahl-opt

@jrosendahl-opt jrosendahl-opt commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

Why

The README didn't document several things integrators need to know: which thread listeners run on, how the Google Advertising ID is read and sent (and that consent is the app's job), how each OptableIdentifier is encoded, and what a targeting or profile result contains.

- Listeners are called on the main thread (except tryIdentifyFromUrl's
  immediate error when no valid oeid is found).
- How the Google Advertising ID is read and attached, the 3 second wait,
  Limit Ad Tracking, that consent is the app's responsibility via
  skipAdvertisingIdDetection, and how to remove the merged AD_ID
  permission.
- Every OptableIdentifier's prefix and encoding, Hem/HashedPhoneNumber
  validation, and not passing hashed values to Email/PhoneNumber.
- The fields of OptableTargeting, and that profile returns one.

The Google Advertising ID text describes behaviour after the per-instance
GAID state and 3 second timeout fixes, so this should merge after them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Match #62: every identify and targeting call reads the GAID (never
cached), waiting up to advertisingIdTimeoutMs (100 ms by default), and
skipAdvertisingIdDetection can be changed at any time, applying from the
next call.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Match #62: advertisingIdTimeoutMs is at least 1 ms, so zero no longer
means the GAID is not added, and reading the GAID typically takes tens
of milliseconds depending on the device. skipAdvertisingIdDetection is
the way to never add it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant